#include "testRTT.h"
#include "../RTT/RTT.h"


void testRTT(){

	RTT* rtt = new RTT("ordenAparicion.bin", "posRelativas.bin","vocabulario.bin", false);

	(*rtt).procesarLetra(string("las cosas de la vida"),1);
	(*rtt).procesarLetra(string("la vida es bella"), 2);
	(*rtt).procesarLetra(string("las cosas del querer"), 3);
	(*rtt).procesarLetra(string("la vida despues de la vida"), 4);
	(*rtt).procesarLetra(string("una frase con muchas palabras"),5);
	(*rtt).procesarLetra(string("esta vida es bella y aburrida"), 6);	
	
	(*rtt).ordenarOcurrencias();

	(*rtt).armarListasInvertidas();
	
	(*rtt).obtListasPos(string("cosas"));
	(*rtt).obtListasPos(string("vida"));
	(*rtt).obtListasPos(string("bella"));
	(*rtt).obtListasPos(string("querer"));		
	(*rtt).obtListasPos(string("una"));
	(*rtt).obtListasPos(string("frase"));
	(*rtt).obtListasPos(string("muchas"));
	(*rtt).obtListasPos(string("palabras"));
	
	string f1 = "frase con muchas";
	
	vector<int> resultados1;
	
	(*rtt).buscarPorFrase(f1, resultados1);
	
	cout << "frase con muchas está en: " << endl;
	cout << resultados1[0] << endl; // docum. 5
	cout << endl;
	

	string f2 = "vida es bella";

	vector<int> resultados2;
	
	(*rtt).buscarPorFrase(f2, resultados2);
	
	cout << "vida es bella esta en:" << endl;
	cout << resultados2[0] << endl;	// docum. 2
	cout << resultados2[1] << endl;	// docum. 6
	
	delete rtt;

}

void testRTT2(){ // agregar un documento en una nueva indexación

	RTT* rtt = new RTT("ordenAparicion.bin", "posRelativas.bin","vocabulario.bin", false);	
	
	(*rtt).procesarLetra(string("esta vida es bella y larga"), 7);

	(*rtt).ordenarOcurrencias();

	(*rtt).armarListasInvertidas();
	
	vector<int> resultados1;
	
	string f1 = "vida es bella";

	(*rtt).buscarPorFrase(f1, resultados1);	
	
	cout << resultados1[0] << endl;	// docum. 2
	cout << resultados1[1] << endl;	// docum. 6
	cout << resultados1[2] << endl;	// docum. 7	
	
	vector<int> resultados2;

	string f2 = "frase que no existe";
	
	(*rtt).buscarPorFrase(f2, resultados2);
	
	vector<int> resultados3;
	
	string f3 = "bella";
	
	(*rtt).buscarPorFrase(f3, resultados3);
	
	cout << resultados3[0] << endl;
	cout << resultados3[1] << endl;
	cout << resultados3[2] << endl;
	
	delete rtt;	
	
}	
